﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;

namespace AcademiaDAO
{
    // internal porque tiene que ser usada por el mismo assembly
    internal class AccesoDato
    {
        private static readonly string propiedad = "AcademiaBD"; // cambiar segun el Web.config

        /*
         * ¡¡ IMPORTANTE !!
         * NO CAMBIAR MAS LA VARIABLE propiedad
         * SI SE QUIERE CAMBIAR LA CADENA DE CONEXION HACERLO DESDE EL WEB.CONFIG
         * EN EL WEB.CONFIG PONER COMO name A LA CONEXION QUE SE DESEA "AcademiaBD" COMO APARECE EN propiedad Y MODIFICAR LA OTRA QUE TENIA "AcademiaBD"
         * ASI SE EVITA LA MOLESTIA DE VOLVER A COMPILAR TODO EL PROYECTO
         * */

        private static string CADENA_CONEXION;

        private AccesoDato() { }

        static AccesoDato()
        {
            // Se obtiene la cadena de conexión desde el archivo de configuración (Web.config de la capa de presentación)
            ConnectionStringSettings css = ConfigurationManager.ConnectionStrings[propiedad];
            if (css != null)
            {
                CADENA_CONEXION = css.ConnectionString;
            }
        }

        public static SqlConnection dameConexion()
        {
            string strConexion = ConfigurationManager.ConnectionStrings[propiedad].ConnectionString.ToString();
            SqlConnection con = new SqlConnection(strConexion);
            return con;
        }

        public static SqlConnection Conectar()
        {
            return new SqlConnection(CADENA_CONEXION);
        }
    }
}
